*
* # Groups # {#key-group-explanation}
*
- * One #GdkKeymap object exists for each user display. gdk_keymap_get_default()
- * returns the #GdkKeymap for the default display; to obtain keymaps for other
- * displays, use gdk_keymap_get_for_display(). A keymap
- * is a mapping from #GdkKeymapKey to key values. You can think of a #GdkKeymapKey
- * as a representation of a symbol printed on a physical keyboard key. That is, it
+ * One #GdkKeymap object exists for each user display. To obtain keymaps for
+ * a display, use gdk_keymap_get_for_display(). A keymap is a mapping from
+ * #GdkKeymapKey to key values. You can think of a #GdkKeymapKey as a
+ * representation of a symbol printed on a physical keyboard key. That is, it
* contains three pieces of information. First, it contains the hardware keycode;
* this is an identifying number for a physical key. Second, it contains the
* “level” of the key. The level indicates which symbol on the
return FALSE;
}
-/**
- * gdk_keymap_get_default:
- *
- * Returns the #GdkKeymap attached to the default display.
- *
- * Returns: (transfer none): the #GdkKeymap attached to the default display.
- */
-GdkKeymap*
-gdk_keymap_get_default (void)
-{
- return gdk_keymap_get_for_display (gdk_display_get_default ());
-}
-
/**
* gdk_keymap_get_direction:
* @keymap: a #GdkKeymap
GDK_AVAILABLE_IN_ALL
GType gdk_keymap_get_type (void) G_GNUC_CONST;
-GDK_AVAILABLE_IN_ALL
-GdkKeymap* gdk_keymap_get_default (void);
GDK_AVAILABLE_IN_ALL
GdkKeymap* gdk_keymap_get_for_display (GdkDisplay *display);
if (GDK_IS_WIN32_DISPLAY (gdk_display_get_default ()) &&
keyval == 0xffae)
{
- GdkWin32Keymap *keymap = GDK_WIN32_KEYMAP (gdk_keymap_get_default ());
+ GdkWin32Keymap *keymap = GDK_WIN32_KEYMAP (gdk_keymap_get_for_display (gdk_display_get_default ()));
return (guint32) _gdk_win32_keymap_get_decimal_mark (keymap);
}
if (keyval && accelerator_codes != NULL)
{
+ GdkKeymap *keymap = gdk_keymap_get_for_display (gdk_display_get_default ());
GdkKeymapKey *keys;
gint n_keys, i, j;
- if (!gdk_keymap_get_entries_for_keyval (gdk_keymap_get_default (), keyval, &keys, &n_keys))
+ if (!gdk_keymap_get_entries_for_keyval (keymap, keyval, &keys, &n_keys))
{
/* Not in keymap */
error = TRUE;
GtkIMContextSimplePrivate *priv = context_simple->priv;
GdkWindow *window = gdk_event_get_window ((GdkEvent *) event);
GdkDisplay *display = gdk_window_get_display (window);
+ GdkKeymap *keymap = gdk_keymap_get_for_display (display);
GSList *tmp_list;
int n_compose = 0;
GdkModifierType hex_mod_mask;
if (keyval == gtk_compose_ignore[i])
return FALSE;
- hex_mod_mask = gdk_keymap_get_modifier_mask (gdk_keymap_get_for_display (display),
- GDK_MODIFIER_INTENT_PRIMARY_ACCELERATOR);
+ hex_mod_mask = gdk_keymap_get_modifier_mask (keymap, GDK_MODIFIER_INTENT_PRIMARY_ACCELERATOR);
hex_mod_mask |= GDK_SHIFT_MASK;
if ((priv->in_hex_sequence || priv->in_emoji_sequence) && priv->modifiers_dropped)
{
GdkModifierType no_text_input_mask;
- no_text_input_mask =
- gdk_keymap_get_modifier_mask (gdk_keymap_get_for_display (display),
- GDK_MODIFIER_INTENT_NO_TEXT_INPUT);
+ no_text_input_mask = gdk_keymap_get_modifier_mask (keymap, GDK_MODIFIER_INTENT_NO_TEXT_INPUT);
if (state & no_text_input_mask ||
((priv->in_hex_sequence || priv->in_emoji_sequence) && priv->modifiers_dropped &&
guint16 output[2];
gsize output_size = 2;
- switch (gdk_win32_keymap_check_compose (GDK_WIN32_KEYMAP (gdk_keymap_get_default ()),
+ switch (gdk_win32_keymap_check_compose (GDK_WIN32_KEYMAP (keymap),
priv->compose_buffer,
n_compose,
output, &output_size))
static void
test_basic (void)
{
+ GdkKeymap *keymap;
GtkKeyHash *hash;
GSList *keys;
+ keymap = gdk_keymap_get_for_display (gdk_display_get_default ());
count = 0;
- hash = _gtk_key_hash_new (gdk_keymap_get_default (), counting_destroy);
+ hash = _gtk_key_hash_new (keymap, counting_destroy);
keys = _gtk_key_hash_lookup (hash, 0, 0, 0, 0);
g_assert (keys == NULL);
gint n_results,
...)
{
+ GdkKeymap *keymap;
va_list ap;
gint d;
GSList *res, *l;
GdkKeymapKey *keys;
gint n_keys;
- gdk_keymap_get_entries_for_keyval (gdk_keymap_get_default (), keyval, &keys, &n_keys);
+ keymap = gdk_keymap_get_for_display (gdk_display_get_default ());
+
+ gdk_keymap_get_entries_for_keyval (keymap, keyval, &keys, &n_keys);
if (n_keys == 0)
return;
static void
test_match (void)
{
+ GdkKeymap *keymap;
GtkKeyHash *hash;
static Entry entries[] = {
{ GDK_KEY_a, GDK_CONTROL_MASK },
{ 0, 0 }
};
- hash = _gtk_key_hash_new (gdk_keymap_get_default (), NULL);
+ keymap = gdk_keymap_get_for_display (gdk_display_get_default ());
+
+ hash = _gtk_key_hash_new (keymap, NULL);
add_entries (hash, entries);
test_lookup (hash, GDK_KEY_a, GDK_CONTROL_MASK, DEFAULT_MASK, 4, 1, 1, 2, 2);
static gboolean
hyper_equals_super (void)
{
+ GdkKeymap *keymap;
GdkModifierType mods1, mods2;
+ keymap = gdk_keymap_get_for_display (gdk_display_get_default ());
+
mods1 = GDK_HYPER_MASK;
- gdk_keymap_map_virtual_modifiers (gdk_keymap_get_default (), &mods1);
+ gdk_keymap_map_virtual_modifiers (keymap, &mods1);
mods1 = mods1 & ~GDK_HYPER_MASK;
mods2 = GDK_SUPER_MASK;
- gdk_keymap_map_virtual_modifiers (gdk_keymap_get_default (), &mods2);
+ gdk_keymap_map_virtual_modifiers (keymap, &mods2);
mods2 = mods2 & ~GDK_SUPER_MASK;
return mods1 == mods2;
static void
test_virtual (void)
{
+ GdkKeymap *keymap;
GtkKeyHash *hash;
static Entry entries[] = {
{ GDK_KEY_a, GDK_SUPER_MASK },
{ 0, 0 }
};
- hash = _gtk_key_hash_new (gdk_keymap_get_default (), NULL);
+ keymap = gdk_keymap_get_for_display (gdk_display_get_default ());
+
+ hash = _gtk_key_hash_new (keymap, NULL);
add_entries (hash, entries);
test_lookup (hash, GDK_KEY_a, GDK_SUPER_MASK, DEFAULT_MASK, 2, 1, 1);
test_lookup (hash, GDK_KEY_d, GDK_HYPER_MASK, DEFAULT_MASK, 0);
mods = GDK_HYPER_MASK;
- gdk_keymap_map_virtual_modifiers (gdk_keymap_get_default (), &mods);
+ gdk_keymap_map_virtual_modifiers (keymap, &mods);
test_lookup (hash, GDK_KEY_d, mods, DEFAULT_MASK, 0);
}